#include "mine_motors_pwm.h"

/**
 * 初始化
 */
void mine_motors_pwm_init(void)
{
    TIM_DeInit(TIM4); // 重新初始化TIM4为默认状态
    TIM_DeInit(TIM2); // 重新初始化TIM2为默认状态
    //
    mine_motor1_pwm_init();
    mine_motor2_pwm_init();
    mine_motor3_pwm_init();
    mine_motor4_pwm_init();
}

/**
 * 控制占空比
 */
void mine_motors_pwm_set(u8 index, u16 duty)
{
    switch (index)
    {
    case 0:
        mine_motor1_pwm_set(duty);
        break;
    case 1:
        mine_motor2_pwm_set(duty);
        break;
    case 2:
        mine_motor3_pwm_set(duty);
        break;
    case 3:
        mine_motor4_pwm_set(duty);
        break;
    }
}

/**
 * 可能导致DAP被烧
 */
void mine_motors_pwm_test(void)
{

    // printf("motors  test\n");

    // u16 duty = (u16)(0.1 * (1 << 16));
    // // mine_motor1_pwm_set(duty);
    // vTaskDelay(1800);
    // mine_motor2_pwm_set(duty);
    // vTaskDelay(1800);
    // // mine_motor3_pwm_set(duty);
    // vTaskDelay(1800);
    // mine_motor4_pwm_set(duty);
    // vTaskDelay(1800);
}
